vulkan: Handle linear gradients
authorBenjamin Otte <otte@redhat.com>
Mon, 26 Dec 2016 16:11:13 +0000 (17:11 +0100)
committerBenjamin Otte <otte@redhat.com>
Mon, 26 Dec 2016 16:22:02 +0000 (17:22 +0100)
commitaf917c4ade51dff5ffb934c5d6d8f366c4977dd4
tree32f48583dc31c95da25aa8886dafe6ed6e5f993b
parentc0c44c7b9cfb33ead68a31ac13319f82e22128b3
vulkan: Handle linear gradients

Note: We interpolate premultiplied colors as per the CSS spec. This i
different from Cairo, which interpolates unpremultiplied.

So in testcases with translucent gradients, it's actually Cairo that is
wrong.
20 files changed:
gsk/Makefile.am
gsk/gskrendernodeimpl.c
gsk/gskrendernodeprivate.h
gsk/gskvulkanlineargradientpipeline.c [new file with mode: 0644]
gsk/gskvulkanlineargradientpipelineprivate.h [new file with mode: 0644]
gsk/gskvulkanrender.c
gsk/gskvulkanrenderpass.c
gsk/gskvulkanrenderprivate.h
gsk/resources/vulkan/linear-clip-rounded.frag.glsl [new file with mode: 0644]
gsk/resources/vulkan/linear-clip-rounded.frag.spv [new file with mode: 0644]
gsk/resources/vulkan/linear-clip-rounded.vert.glsl [new file with mode: 0644]
gsk/resources/vulkan/linear-clip-rounded.vert.spv [new file with mode: 0644]
gsk/resources/vulkan/linear-clip.frag.glsl [new file with mode: 0644]
gsk/resources/vulkan/linear-clip.frag.spv [new file with mode: 0644]
gsk/resources/vulkan/linear-clip.vert.glsl [new file with mode: 0644]
gsk/resources/vulkan/linear-clip.vert.spv [new file with mode: 0644]
gsk/resources/vulkan/linear.frag.glsl [new file with mode: 0644]
gsk/resources/vulkan/linear.frag.spv [new file with mode: 0644]
gsk/resources/vulkan/linear.vert.glsl [new file with mode: 0644]
gsk/resources/vulkan/linear.vert.spv [new file with mode: 0644]